Improving Software Engineering Through Holistic Project Coaching

نویسندگان

  • Randall Jensen
  • Kasey Thompson
  • Doretta E. Gordon
چکیده

The process to successfully engineer quality software suffers from challenges identified over 40 years ago. Upon deeper review, a majority of the factors related to software development failure are human factors. Including a Project Coach (PC) who is focused on humanistic issues in the software engineering process will have a positive impact in addressing software engineering challenges. A PC focuses on Knowledge Management (KM), cyclical assessment, informal learning, and dynamics coaching to ensure team harmony and growth, sound project management practices, and most importantly– quality, on time software. The 1968 NATO International Software Engineering Conference [1] in Munich, Germany, raised a series of complaints about computer software including its unreliable nature, late delivery, cost-prohibitive nature of modification, challenges in maintenance, inadequate performance, and budget cost excesses. This conference resulted in the coining of the phrase “software engineering.” Over 40 years later, the software engineering field has failed to significantly diminish or eliminate many of these serious complaints. An IEEE Spectrum article entitled “Why Software Fails” [2] cites 12 common failure factors: 1. Unrealistic or unarticulated project goals 2. Inaccurate estimates of needed resources 3. Badly defined system requirements 4. Poor reporting of the project’s status 5. Unmanaged risks 6. Poor communication among customers, developers, and users 7. Use of immature technology 8. Inability to handle the project’s complexity 9. Sloppy development practices 10. Poor project management 11. Stakeholder politics 12. Commercial pressures While the article categorized deficiencies into technical, project management, and business decision deficiencies, it can also be noted that nine of the 12 factors are human factors. A recent focus has been placed on management and people issues in the software development process. This focus on the importance of people in the software engineering process has appeared in early works ranging from McGregor’s [3] Theory X Theory Y to Deming’s [4] Total Quality Management approach. To further quantify the impact of people in the software development process, both the Constructive Cost Model [5] and Software Evaluation and Estimation of Resources (SEER) [6] software estimation models forecast the relative impact of the development environment parameters. The most important parameter group (Staff Capability) shows a relative cost impact of 0.5 on the positive side and greater than 2.2 on the negative side (see Figure 1). Figure 1: Relative cost impact of the Constructive Cost Model and SEER environment parameters A second aspect relative to the importance of people in the product–process–people triad is the generational diversity that is now representative of a majority of the workforce population. Today’s workforce is divided among Baby Boomers; generally described as those born between 1944 and 1966, Generation X; born between 1967 and 1979, through Generation Y; born between 1980 through 1995. Each workforce generation is shaped by key events in their development and results in differing needs, desires and expectations as it relates to work environments. For example, Generation Y has never known a time in which there was no Internet. They have grown up in a “connected” world. This has helped to shape their expectations in terms of teaming, communication, learning and information sharing. There are growing cases of Generation Y Project Managers (PMs) who are now managing Baby Boomers [7]. These dynamics presents new challenges to projects such as software development and, at a minimum, require an awareness of differences in expectations and outlooks. Unless people are considered as an equally important leg supporting the product–process–people triad of software engineering, the results will remain inconsistent and unstable at best.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Model for Improving the Quality of Student Internship Placements in Engineering Degrees

Work Internship Placements (WIP) is a new and transversal enterprise internships programme, which is focused on quality improvement, academic control and satisfaction of collaborating enterprises. This programme is addressed to the engineering students of the Polytechnic School at the University of Girona (UdG) in Spain. The fundamental WIP infrastructure combines a web-based intranet platform,...

متن کامل

Software ? That is the question . The Holistic

Software Engineering is still a largely immature engineering discipline. To cope with this problem, the goal of the “Software Engineering Method And Theory” (SEMAT) collaborative project is to “refound software engineering based on a solid theory, proven principles and best practices”. According to the vision statement, the starting point is to define what is “Software Engineering” and in parti...

متن کامل

On Broadening Software Development Productivity Research to Serve Better Software Engineering Management

The unresolved problems of improving software engineering management require a broader systemic approach of investigating related issues like software development productivity. The paper links software engineering management to research on software cost estimation and on factors affecting software development productivity. It examines ways for the systemic incorporation of all issues influencin...

متن کامل

An Investigation of an Open-Source Software Development Environment in a Software Engineering Graduate Course

A semester-long ethnography study was carried out to investigate project-based learning in a graduate software engineering course through the implementation of an Open-Source Software Development (OSSD) learning environment, which featured authentic projects, learning community, cognitive apprenticeship, and technology affordances. The study revealed that while the OSSD learning environment mot...

متن کامل

Hierarchical XP Improving XP for large scale projects in analogy to reorganization processes

XP is a light-weight methodology suited particularly for small-sized teams that develop software which has only vague or rapidly changing requirements. The discipline of systems engineering knows it as approach of incremental system change or also of “muddling through”. In this paper, we introduce three well known methods of reorganizing companies, namely, the holistic approach, the incremental...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2011